2015-06-08

开篇–心法篇

  • 交叉学科
    背景多样,机会均等,算法关键也不过是小小一隅

  • 你的心与相

大纲

  • 数据
  • 分析
  • 方法

    数据越来越多,信息越来越深。
    经验pk数据,分析无处不在,合理的值得存在。
    没有最好的方法,只有最适合的方法。

感谢

统计之都
Rstudio
……

数据分析方法

数据分析方法

  • 数据量级
    天气、地震、量子物理、基因等,都是大数据;
    任何一个网站的数据都是人们互联网行为数据的很小的一个子集;
    人们面对的是信息过载,有效信息筛选的问题;

bdata

数据分析方法

  • 抽样分析
    数据量的大幅增加会造成结果的不准确,来源不同的信息混杂会加大数据的混乱程度;
    抽样是简化问题,发现规律的有效方法之一;
  • 美国大选
    永久的课题,始于1936,盖洛普5万随机抽样vs《文学摘要》250万问卷,罗斯福vs蓝顿.(都是样本)
    2012,538模型,Nate Silver.


538美国大选预测模型
538更新

数据分析方法

  • 认识数据
    ** 数据是不是客观的
    ** 规律多样都靠谱么
    ** 认识是主观的
    ** 面对数据:从认识自己开始

数据分析方法

数据只有经过合理的分析,使用合适的方法,才可能得到较为符合实际的结论。

然而,事实是,对于无处不在的数据,只要用上一种方法,就能得到一个结论。

下面介绍几个分析角度,描述几个从客观数据到主观推断的风险。
- 换个视角(圈圈图)
- 相关性假象
- 一步到位的分析
- 辛普森悖论

数据分析方法

  • 噪音大过信息,一团糟的数据中规律在哪儿
par(mfrow = c(1, 2), ann = FALSE)
plot(BinormCircle)

数据分析方法

  • 噪音大过信息,一团糟的数据中规律在哪儿
par(mfrow = c(1, 2), ann = FALSE)
plot(BinormCircle)
smoothScatter(BinormCircle)

数据分析方法

一个简单的方法,改变下观察视角:点的大小+放大

par(mfrow = c(1, 1))
plot(BinormCircle,pch=19,cex=0.01)

数据分析方法

  • 普遍的"相关性"
plot(身高~体重,d2)

数据分析方法

  • 普遍的"相关性"
plot(身高~体重,d2);text(d2[,2],d2[,3],d2[,1]);

数据分析方法

  • 普遍的"相关性"
# 上证综指
getSymbols("^SSEC");SSEC=data.frame(SSEC)
## [1] "SSEC"
SSEC$t=rownames(SSEC);tail(SSEC)
##            SSEC.Open SSEC.High SSEC.Low SSEC.Close SSEC.Volume
## 2016-11-29  3269.234  3301.213 3263.397   3282.924      320800
## 2016-11-30  3272.142  3277.269 3239.521   3250.034      243600
## 2016-12-01  3257.027  3279.671 3256.256   3273.309      237800
## 2016-12-02  3270.121  3279.714 3235.277   3243.843      259600
## 2016-12-05  3203.784  3219.518 3194.879   3204.709      223000
## 2016-12-06  3202.029  3215.311 3196.525   3199.647      157600
##            SSEC.Adjusted          t
## 2016-11-29      3282.924 2016-11-29
## 2016-11-30      3250.034 2016-11-30
## 2016-12-01      3273.309 2016-12-01
## 2016-12-02      3243.843 2016-12-02
## 2016-12-05      3204.709 2016-12-05
## 2016-12-06      3199.647 2016-12-06

数据分析方法

  • 普遍的"相关性"–身高体重与股价
n=nrow(SSEC);x=1:n;y1=SSEC$SSEC.Volum;y2=SSEC$SSEC.Close;
twoord.plot(x,y1,x,y2,xlim=c(0,n),lylim=c(0,300000),rylim=c(2000,6000), lcol=4,rcol=2,xlab="name",ylab="volume",rylab="close",type=c("bar","b"),xticklab=SSEC$t,halfwidth=0.2)
plot(身高~体重,d2,axes=F,col="blue",pch=19,type='b',cex=2,xlab='',ylab='')

数据分析方法

  • 一步到位的分析(很相关)
plot(x, y)
abline(lm(y ~ x), col = "red")

数据分析方法

  • 一步到位的分析(逆袭–控制变量)
plot(x, y, pch = z, col = rainbow(5)[z + 1])
for (i in z) abline(lm(y ~ x, subset = z == i), col = "darkgray")

数据分析方法

+——-+——+——+
| 统计 | 有效| 无效 |
+——-+——+——+
| 新药 | 80 | 120 |
+——-+——+——+
| 安慰剂| 100 | 100 |
+——-+——+——+
RD = 80/200-100/200= -0.1

| 性别 |   男性  |   女性  |  
| ---- | -- | -- | -- | -- | 
|      |有效|无效|有效|无效|  
| ---- | -- | -- | -- | -- |   
| 新药 | 35 |15  |45  |105 |  RD男 = 35/50-90/150= 0.1  
|安慰剂| 90 |60  |10  |40  |  RD女 = 45/150-10/50= 0.1  
  • 辛普森悖论

数据分析方法

  • 辛普森悖论2

数据分析方法

  1. 分析与观察
  2. 统计建模
  3. 数据挖掘
  4. 分析工具

方法–1.分析与观察

最常用的图形

par(mfrow = c(1, 3));
hist(rnorm(100),col='blue');plot(rnorm(20),col='red');
plot(seq(1,10)+runif(10,min=0,max=15),type='b',col='green')

方法–1.分析与观察

方法–1.分析与观察

复杂的图形

方法–1.分析与观察

方法–2.统计建模

  • 抽样
  • 假设
  • 估计
  • 理论

方法–3.数据挖掘

  • 输入
  • 算法
  • 输出
  • 评估
  • 工程

方法–4.分析工具

方法–4.分析工具

方法–4.分析工具

excel,
SPSS,
SAS,
matlab,
R,
weka,
python,
sql,hadoop,storm,spark,
… …

数据>分析>方法–小结

  • 兴趣+观察+分析
  • 统计建模
  • 数据挖掘
  • 代码流
  • 工具流
    因地制宜,发挥所长。

  • 浩瀚如海的算法

数据>分析>方法–小结

  • 浩瀚如海的算法
  • spark风潮

数据>分析>方法–思考作业

结语–心法篇

  • 谁的心与相
    心之所属
    相之所至
    无相无我
    无我无相

参考

[1]:谢益辉,2010,"统计图形和模拟视角下的模型理论解析".
[2]:达莱尔,廖颖林译,2002,《统计陷阱》.
[3]:耿直,2009,"如何从生命科学研究数据中挖掘因果关系和评价因果作用?"
[4]:刘德寰,李雪莲,2013,"大数据的风险和现存问题"
[5]:吴恩达,Spark Summit 2016,"AI超能力"
[6]:Kumar Ashish,2016,"Deeplearning&XgBoost:Winning it hands down", http://www.datasciencecentral.com/profiles/blogs/deep-learning-xgboost-winning-it-hands-down
[7]:Manuel Fernández-Delgado,Eva Cernadas,etc,2014,"Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?",http://jmlr.org/papers/v15/delgado14a.html